ABC247 D - Cylinder
提出
code: python
import queue
q = int(input())
que = queue.Queue()
# que.put('3' * 3)
# with que.mutex:
# print(que.queue)
# 文字列にしたら境目がなくなる
for quer in query:
else:
res = 0
res += que.get()
print(res)
解答
code: python
from collections import deque
q = int(input())
deq = deque()
for quer in query:
deq.append(x, c) # xが書かれたボールを右からc個入れる else:
c = quer1 # cが0になるまでボールを取り出し続ける res = 0 # 取り出したボールに書かれた数の合計
while c > 0:
if c >= cnt:
res += num * cnt
deq.popleft() # この塊のボールを全部取り出したので、deqから削除する
c -= cnt
else:
res += num * c
c = 0 # これ以上取り出さない
print(res)
メモ
提出
code: python
from collections import deque
q = int(input())
queue = deque()
# for query in queries:
# _, x, c = query
# # TOO MANY LOOP
# for _ in range(c):
# queue.append(x)
# else:
# _, c = query
# ans = 0
# for _ in range(c):
# ans += queue.popleft()
# print(ans)
for query in queries:
_, x, c = query
queue.append((x, c))
else:
_, c = query
ans = 0
while c > 0:
qx, qc = queue.popleft()
if qc > c:
ans += qx * c
queue.appendleft((x, qc - c))
break
else:
ans += qx * qc
c -= qc
print(ans)